package com.xxl.job.core.handler.impl;

import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.IJobHandler;

/**
 * glue job handler
 *
 * @author xuxueli 2016-5-19 21:05:45
 */
public class GlueJobHandler extends IJobHandler {

  private long glueUpdatetime;
  private IJobHandler jobHandler;

  public GlueJobHandler(IJobHandler jobHandler, long glueUpdatetime) {
    this.jobHandler = jobHandler;
    this.glueUpdatetime = glueUpdatetime;
  }

  public long getGlueUpdatetime() {
    return glueUpdatetime;
  }

  @Override
  public void execute() throws Exception {
    XxlJobHelper.log("----------- glue.version:" + glueUpdatetime + " -----------");
    jobHandler.execute();
  }

  @Override
  public void init() throws Exception {
    this.jobHandler.init();
  }

  @Override
  public void destroy() throws Exception {
    this.jobHandler.destroy();
  }
}
